iT邦幫忙

DAY 5
9

深入淺出Android程式設計30天系列 第 5

Android架構說明(下)

  • 分享至 

  • xImage
  •  

在這個章節中,最後要討論就是負責跟硬體溝通的底層核心同時也是最重要的Android Runtime(Android執行環境)及Linux Kernel(Linux核心)部份。
在這個章節中,最後要討論就是負責跟硬體溝通的底層核心同時也是最重要的Android Runtime(Android執行環境)及Linux Kernel(Linux核心)部份。
Android Runtime(Android執行環境)及Linux Kernel(Linux核心),如圖4所示。下述為各層級的描述。


圖4

Android Runtime
在Android SDK(軟體開發套件)的Android Runtime分成二個重要的元件來執行系統,雖然Android是用Java來開發、撰寫應用程式,但卻不使用Java Runtime來執行Java程式,而是自行研發Android Runtime來執行程式。
這二個重要元件分別是Core Libraries(核心函式庫),另一個是Dalvik Virtual Machine(Dalvik 虛擬機器)。

A.Core Libraries(核心函式庫)
Core Libraries(核心函式庫)裡頭已經包含了絕大多數Java所需要呼用的函式,接著每一個Android應用程式都會以自屬的process(程序)。而且Android不是用一個Dalvik虛擬機器來同時執行多個Android應用程式,而是每個Android應用程式都用一個自屬的Dalvik虛擬機器來執行。

B.Dalvik Virtual Machine(Dalvik 虛擬機器)
Dalvik Virtual Machine(Dalvik虛擬機器)是一種暫存器型態的虛擬機器。在撰寫開發時就已經設想用最少的記憶體資源來執行,以及前述的「同時可執行多個VM個體」。這樣的設計,讓系統在執行程式可以最佳化的方式來執行,節省更多的資源。有關Dalvik Virtual Machine(Dalvik虛擬機器),會在下一個章節,做更詳細的說明。

Linux Kernel(Linux核心)
在Android SDK(軟體開發套件)的作業系統是用Linux,其版本為2.6版。而所提供的核心系統服務,如下所述:
A.安全性(Security)
B.記憶體管理(Memory Management)
C.行程管理(Process Management)
D.網路堆疊(Network Stack)
E.驅動程式模型(Driver Model)包含下述這些常規的驅動程式:
(1)Display Driver
(2)Keypad Driver
(3)Camera Driver
(4)WiFi Driver
(5)Flash Memory Driver
(6)Audio Driver
(7)Binder(IPC) Driver
(8)Power Management

此系統核心同樣是作為硬體與軟體架構之間的抽象層(Abstraction Layer)。來做為相互溝通的工作。


上一篇
Android架構說明(中)
下一篇
什麼是Dalvik Virtual Machine?
系列文
深入淺出Android程式設計30天29
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言